package co.edu.usbcali.unidades.modelo.dto;

import co.edu.usbcali.unidades.modelo.Pais;
import co.edu.usbcali.unidades.presentation.backingBeans.PaisView;

import java.io.Serializable;

import java.util.Date;

import javax.faces.event.ActionEvent;


/**
*
*
* @author Zathura Code Generator http://code.google.com/p/zathura
*
*/
public class PaisDTO implements Serializable {
	private static final long serialVersionUID = 1L;
	private String paiNombre;
	private String estCodigo_Estado;
	private String estado_nombre;
	private String paiCodigo;
	private boolean rowSelected = false;
	private PaisView paisView;
	private Pais pais;
	private String estado = "false";
	private String btnActivar="true";

	public Pais getPais() {

		return pais;
	}

	public String listener_update(ActionEvent e) {
		try {
			paisView
					.action_modifyWitDTO(
							((paiCodigo == null) || paiCodigo.equals("")) ? null
									: new String(paiCodigo),
							((paiNombre == null) || paiNombre.equals("")) ? null
									: new String(paiNombre.trim().toUpperCase()),
							((estCodigo_Estado == null) || estCodigo_Estado
									.equals("")) ? null : new String(
									estCodigo_Estado));
			rowSelected = !rowSelected;
		} catch (Exception ex) {
			return "";
		}

		return "";
	}

	public String listener_delete(ActionEvent e) {
		try {
			paisView
					.action_modifyWitDTO(
							((paiCodigo == null) || paiCodigo.equals("")) ? null
									: new String(paiCodigo),
							((paiNombre == null) || paiNombre.equals("")) ? pais.getPaiNombre()
									: new String(pais.getPaiNombre()),
							((estCodigo_Estado == null) || estCodigo_Estado
									.equals("")) ? null : new String("2"));			
			rowSelected = !rowSelected;
		} catch (Exception ex) {
			return "";
		}

		return "";
	}
	
	public String listener_activar(ActionEvent e) {
		try {
			paisView
					.action_modifyWitDTO(
							((paiCodigo == null) || paiCodigo.equals("")) ? null
									: new String(paiCodigo),
							((paiNombre == null) || paiNombre.equals("")) ? pais.getPaiNombre()
									: new String(pais.getPaiNombre()),
							((estCodigo_Estado == null) || estCodigo_Estado
									.equals("")) ? null : new String("1"));
			estado_nombre=pais.getEstado().getEstNombre();
			System.out.println("nuevo estado: "+ estado_nombre);
			rowSelected = !rowSelected;			
		} catch (Exception ex) {
			return "";
		}

		return "";
	}

	public void listener_cancel(ActionEvent e) {
		paiCodigo = pais.getPaiCodigo().toString();
		paiNombre = (pais.getPaiNombre() != null) ? pais.getPaiNombre()
				.toString() : null;
		estCodigo_Estado = (pais.getEstado().getEstCodigo() != null) ? pais
				.getEstado().getEstCodigo().toString() : null;
		rowSelected = !rowSelected;
	}

	public void listener_estado() {
		if (estCodigo_Estado.equals("2")) {
			estado = "false";
		} else {
			estado = "true";
			btnActivar="false";
		}		
	}

	/**
	 * <p>
	 * Bound to commandLink actionListener in the ui that renders/unrenders the
	 * Object details for editing.
	 * </p>
	 */
	public void toggleSelected(ActionEvent e) {
		listener_estado();
		paiCodigo = pais.getPaiCodigo().toString();
		paiNombre = (pais.getPaiNombre() != null) ? pais.getPaiNombre()
				.toString() : null;
		estCodigo_Estado = (pais.getEstado().getEstCodigo() != null) ? pais
				.getEstado().getEstCodigo().toString() : null;
		rowSelected = !rowSelected;
	}

	public void setPais(Pais pais) {
		this.pais = pais;
	}

	public PaisView getPaisView() {
		return paisView;
	}

	public void setPaisView(PaisView paisView) {
		this.paisView = paisView;
	}

	public String getPaiNombre() {
		return paiNombre;
	}

	public void setPaiNombre(String paiNombre) {
		this.paiNombre = paiNombre;
	}

	public String getEstCodigo_Estado() {
		return estCodigo_Estado;
	}

	public void setEstCodigo_Estado(String estCodigo_Estado) {
		this.estCodigo_Estado = estCodigo_Estado;
	}

	public String getPaiCodigo() {
		return paiCodigo;
	}

	public void setPaiCodigo(String paiCodigo) {
		this.paiCodigo = paiCodigo;
	}

	public String getEstado_nombre() {
		estado_nombre = pais.getEstado().getEstNombre();
		return estado_nombre;
	}

	public void setEstado_nombre(String estadoNombre) {
		estado_nombre = estadoNombre;
	}

	public String getEstado() {
		return estado;
	}

	public void setEstado(String estado) {
		this.estado = estado;
	}

	public boolean isRowSelected() {
		return rowSelected;
	}

	public void setRowSelected(boolean rowSelected) {
		this.rowSelected = rowSelected;
	}

	public String getBtnActivar() {
		return btnActivar;
	}

	public void setBtnActivar(String btnActivar) {
		this.btnActivar = btnActivar;
	}
	
	
	
	
}
